Pre-Implementation Method Name Prediction for Object-Oriented Programming
نویسندگان
چکیده
Method naming is a challenging development task in object-oriented programming. In recent years, several research efforts have been undertaken to provide automated tool support for assisting developers this task. general, literature approaches assume the availability of method implementation infer its name. Methods however are usually named before their implementations. work, we fill gap about name prediction by developing an approach that predicts names all methods be implemented within class. Our work considers class as input: overall intuition classes with semantically similar tend functionalities, and hence names. We first conduct large-scale empirical analysis on 258K+ from real-world projects validate our hypotheses. Then, propose hybrid big code-driven approach, Mario , predict based name: combine deep learning model heuristics summarized code analysis. Extensive experiments 22K+ yielded promising results: compared state-of-the-art code2seq (which leverages data), achieves comparable results terms F-score at token level prediction; additionally, outperforms level. further show significantly other baselines.
منابع مشابه
Pooples - Pre-object Oriented Programming Learning Environments
A need for pre-object oriented programming instructional environments is proposed and several existing possibilities are evaluated and found wanting. The design, implementation and operation of three Pre-Object Oriented Programming Learning Environments (POOPLEs) is presented; together with the outcomes of initial evaluations.
متن کاملObject-Oriented Genetic Programming: An Initial Implementation
This paper describes oogp, an object-oriented genetic programming system. Oogp provides traditional genetic programming capabilities in an object-oriented framework. Among the advantages of object-oriented genetic programming are: (a) strong typing, (b) availability of existing class libraries for inclusion in generated programs, and (c) straightforward extensibility to include features such as...
متن کاملObject-oriented Reactive Programming is Not Reactive Object-oriented Programming
According to chapter 3 of Abelson & Sussman [1], there are two fundamentally different ways to organise large systems: according to the objects that live in the system, or according to the streams of values that flow through the system. Even though the notions of “object” and “stream” have meanwhile taken many incarnations, the dichotomy still exists in modern programming languages. Marrying re...
متن کاملAn Implementation Method for Distributed Object-Oriented Applications
Distribution has become an essential non-functional requirement of most applications. The same application may be required to use different distribution platforms simultaneously or during its evolution. However, distributed applications are considerably more difficult to design, implement and test than centralized systems even with the same functionality. We present an implementation method whi...
متن کاملAutomatic implementation of programming languages using object oriented approach
In the paper our implementation of a tool for automatic language implementation is presented. From formal language definition LISA1 produces an interpreter or a compiler for the defined language. In the paper we describe the development of the tool. It is one of the first such tool developed using the object oriented technology and is coded in the C++ programming language.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: ACM Transactions on Software Engineering and Methodology
سال: 2023
ISSN: ['1049-331X', '1557-7392']
DOI: https://doi.org/10.1145/3597203